-
Notifications
You must be signed in to change notification settings - Fork 14k
Allow vscr to be marked as a clobber in PowerPC inline asm #148663
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
ELFv2 defines this as a "limited-access" register. This means the VSCR[SAT] bit is clobbered by a function call.
|
Some changes occurred in compiler/rustc_codegen_gcc |
|
The job Click to see the possible cause of the failure (guessed by this bot) |
|
I don't think this is the correct approach, and I think this should be handled via Some bits are treated as global state:
Some bits are treated as volatile state:
At the very least we would need separate clobbers for the different types of flags, but I feel that here it's better to stay consistent with other architectures and put all of these under |
I don't think gcc or llvm do anything with vscr, but they do allow it to be marked as a clobber. This prevents needing to enumerate it as a preserved flag if an update does make use of it.
ELFv2 defines this as a "limited-access" register. This means the VSCR[SAT] bit is clobbered by a function call.
r? @Amanieu